package algocasts;

public class P19_mergeTwoSortedArrays {
    // Time:O(m+n)  Space:O(1)
    public void merge(int[] nums1, int m, int[] nums2, int n) {
        int i = m - 1, j = n - 1, k = m + n - 1;
        while (i >= 0 && j >= 0) {
            if (nums2[j] > nums1[i]) {
                nums1[k--] = nums2[j--];
            } else {
                nums1[k--] = nums1[i--];
            }
        }
        while (j >= 0) nums1[k--] = nums2[j--];
    }

    public static void main(String[] args) {
        P19_mergeTwoSortedArrays solution = new P19_mergeTwoSortedArrays();
        int[] nums1 = {0};
        int m = 0;
        int[] nums2 = {1};
        int n = 1;
        solution.merge(nums1, m, nums2, n);

    }
}
